#ifndef COMMAND_HH_
# define COMMAND_HH_

# include <string>

class Command
{
public:
  unsigned int getId();

  std::string getName();
  std::string getBrief();
  std::string getDescription();

  virtual int exec() = 0; // really virtual pure
  // cd add default behaviour: 'cmd not found'

private:
  unsigned int _id;

  std::string _name;
  std::string _brief; /// brief description
  std::string _description; /// full description (display with 'man' || 'help')
};

#endif /* !COMMAND_HH_ */
